home *** CD-ROM | disk | FTP | other *** search
- //******************************************************************************
- // File: ItsxObject.h
- // Module: trueSpace eXtensions API
- // Descr: Declarations for the ItsxObject COM interface
- //******************************************************************************
-
-
- #ifndef ITSXOBJECT_H
- #define ITSXOBJECT_H
-
-
- #include "itsxcommon.h"
-
-
- #undef INTERFACE
- #define INTERFACE ItsxObject
-
-
-
-
- #define ITSXOBJECTTYPEOFFSET 100
-
-
-
- enum ItsxObjectType {
-
- ItsxObjectType_Beginning = ITSXOBJECTTYPEOFFSET,
- ItsxObjectType_Material,
- ItsxObjectType_Scene,
- ItsxObjectType_Plugin_Filter,
- ItsxObjectType_Wind,
- ItsxObjectType_Material_Rect,
- ItsxObjectType_Axes,
- ItsxObjectType_Camera,
- ItsxObjectType_Light,
- ItsxObjectType_Joint,
- ItsxObjectType_Nail,
- ItsxObjectType_Lattice,
- ItsxObjectType_Path,
- ItsxObjectType_Polyhedron,
- ItsxObjectType_Group,
- ItsxObjectType_Metaball,
- ItsxObjectType_Deformation,
- ItsxObjectType_IKGroup,
- ItsxObjectType_End,
-
- };
-
-
-
-
-
- DECLARE_INTERFACE_(ItsxObject, IUnknown)
- {
- // IUnknown members
- STDMETHOD(QueryInterface) (THIS_ REFIID, PPVOID) PURE;
- STDMETHOD_(ULONG, AddRef) (THIS) PURE;
- STDMETHOD_(ULONG, Release) (THIS) PURE;
-
- // ItsxObject members
- STDMETHOD_(TSXHANDLE, GetHandle) (THIS) PURE;
- STDMETHOD(SetHandle) (THIS_ TSXHANDLE) PURE;
- STDMETHOD(PushState) (THIS) PURE;
- STDMETHOD(PopState) (THIS) PURE;
- STDMETHOD(SetActive) (THIS) PURE;
- STDMETHOD(SetFirst) (THIS) PURE;
- STDMETHOD(SetNext) (THIS) PURE;
- STDMETHOD(SetFirstChild) (THIS) PURE;
- STDMETHOD(SetParent) (THIS) PURE;
- STDMETHOD_(ItsxObjectType, GetObjectType) (THIS) PURE;
- STDMETHOD(Create) (THIS) PURE;
- STDMETHOD(Destroy) (THIS) PURE;
- STDMETHOD(GetName) (THIS_ char*, ULONG) PURE;
- STDMETHOD(SetName) (THIS_ LPCTSTR) PURE;
- STDMETHOD(MakeActive) (THIS) PURE;
- STDMETHOD(GroupWith) (THIS_ TSXHANDLE) PURE;
- STDMETHOD(NewGroupWith) (THIS_ TSXHANDLE) PURE;
- STDMETHOD(UnGroup) (THIS) PURE;
-
- };
-
- // typedef a pointer to this interface
- typedef ItsxObject* PITSXOBJECT;
-
- // define a GUID for this interface
- // {7AECD222-3007-11d1-A255-006097D15F58}
- DEFINE_GUID(IID_ItsxObject, 0x7aecd222, 0x3007, 0x11d1, 0xa2, 0x55, 0x0, 0x60, 0x97, 0xd1, 0x5f, 0x58);
-
-
- #endif // ITSXOBJECT_H